package com.jk.mindskip.interfaces;

import com.jk.mindskip.dto.TbStudent;
import com.jk.mindskip.pojo.PagedResponse;
import org.springframework.web.bind.annotation.*;

import java.util.List;

public interface TbStudentServiceApi {

    /**
     * 通过用户名获得学生信息
     * @param username
     * @return
     */
    @PostMapping(value = "/student/findTbStudentByUsername")
    public TbStudent findTbStudentByUsername(@RequestParam("username") String username);
    /**
     * @description: 分页查询学生信息
     * @author: yuedongyue
     * @date: 2024/12/10 10:40
     * @param: [tbStudent, pageNum, pageSize]
     * @return: com.jk.mindskip.pojo.PagedResponse
     **/
    @PostMapping(value = "/student/findStudentList")
    public PagedResponse findStudentList(@RequestBody TbStudent tbStudent ,@RequestParam Integer pageNum , @RequestParam Integer pageSize);
    /**
     * @description: 新增学生信息
     * @author: yuedongyue
     * @date: 2024/12/10 10:40
     * @param: [tbStudent]
     * @return: void
     **/
    @PostMapping(value = "/student/saveOrUpdate")
    public void addStudent(@RequestBody TbStudent tbStudent);
    /**
     * @description: 删除学生信息
     * @author: yuedongyue
     * @date: 2024/12/10 10:40
     * @param: [id]
     * @return: void
     **/
    @DeleteMapping(value = "/student/deleteById")
    public void deleteById(@RequestParam Integer id);
    /**
     * @description: 修改学生信息
     * @author: yuedongyue
     * @date: 2024/12/10 10:41
     * @param: [tbStudent]
     * @return: void
     **/
    @PutMapping(value = "/student/updateStudent")
    public void updateStudent(@RequestBody TbStudent tbStudent);
    /**
     * @description: 批量删除学生信息
     * @author: yuedongyue
     * @date: 2024/12/10 10:43
     * @param: [ids]
     * @return: void
     **/
    @DeleteMapping(value = "/student/deleteStudentByIds")
    public void deleteStudentByIds(@RequestParam List<Integer> ids);













}
